package com.ruoyi.ora.mapper;

import java.util.List;
import com.ruoyi.ora.domain.AssetsRecycle;
import org.apache.ibatis.annotations.Param;

/**
 * 回收站Mapper接口
 * 
 * @author liuwp
 * @date 2025-05-20
 */
public interface AssetsRecycleMapper 
{
    /**
     * 查询回收站
     * 
     * @param id 回收站主键
     * @return 回收站
     */
    public AssetsRecycle selectAssetsRecycleById(Long id);

    /**
     * 查询回收站列表
     * 
     * @param assetsRecycle 回收站
     * @return 回收站集合
     */
    public List<AssetsRecycle> selectAssetsRecycleList(AssetsRecycle assetsRecycle);

    /**
     * 可以业务主键查询一条回收站
     *
     * @param assetsRecycle 回收站
     * @return 回收站集合
     */
    public AssetsRecycle selectOneAssetsRecycle(AssetsRecycle assetsRecycle);

    /**
     * 新增回收站
     * 
     * @param assetsRecycle 回收站
     * @return 结果
     */
    public int insertAssetsRecycle(AssetsRecycle assetsRecycle);

    /**
     * 修改回收站
     * 
     * @param assetsRecycle 回收站
     * @return 结果
     */
    public int updateAssetsRecycle(AssetsRecycle assetsRecycle);

    /**
     * 条件修改回收站
     *
     * @param assetsRecycle 回收站
     * @param assetsRecycle 回收站条件
     * @return 结果
     */
    public int updateAssetsRecycleCondition(@Param("assetsRecycle") AssetsRecycle assetsRecycle, @Param("assetsRecycleCondition") AssetsRecycle assetsRecycleCondition);

    /**
     * 删除回收站
     * 
     * @param id 回收站主键
     * @return 结果
     */
    public int deleteAssetsRecycleById(Long id);

    /**
     * 条件删除回收站
     *
     * @param assetsRecycle 回收站
     * @return 结果
     */
    public int deleteAssetsRecycleByCondition(AssetsRecycle assetsRecycle);

    /**
     * 批量删除回收站
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteAssetsRecycleByIds(Long[] ids);
}
